63ada6
@@ -2840,16 +2840,18 @@
private boolean drop_partition_common(RawStore ms, String db_name, String tbl_na
           checkTrashPurgeCombination(archiveParentDir, db_name + "." + tbl_name + "." + part_vals,
               mustPurge, deleteData && !isExternalTbl);
         }
-        if (!ms.dropPartition(db_name, tbl_name, part_vals)) {
-          throw new MetaException("Unable to drop partition");
-        }
-        success = ms.commitTransaction();
+
         if ((part.getSd() != null) && (part.getSd().getLocation() != null)) {
           partPath = new Path(part.getSd().getLocation());
           verifyIsWritablePath(partPath);
           checkTrashPurgeCombination(partPath, db_name + "." + tbl_name + "." + part_vals,
               mustPurge, deleteData && !isExternalTbl);
         }
+
+        if (!ms.dropPartition(db_name, tbl_name, part_vals)) {
+          throw new MetaException("Unable to drop partition");
+        }
+        success = ms.commitTransaction();
       } finally {
         if (!success) {
           ms.rollbackTransaction();
